$(function () {
    // 区域滑动
    mui('.mui-scroll-wrapper').scroll({
        deceleration: 0.0005, //flick 减速系数，系数越大，滚动速度越慢，滚动距离越小，默认值0.0006
        indicators: false//是否显示滚动条
    });

    // 1、初始化页面，自动下拉刷新
    mui.init({
        pullRefresh : {
            container:"#refreshContainer",//下拉刷新容器标识，querySelector能定位的css选择器均可，比如：id、.class等
            //下拉
            down : {
                auto: true,
                callback: function () {
                    var that = this
                    // window.down = this
                    setTimeout(function () {
                        getCartDate({
                            page: 1,
                            pageSize: 100
                        }, function (data) {
                            $('.mui-table-view').html(template('cartPro',data))
                        })
                        // 下拉刷新停止
                        // mui("#refreshContainer").pullRefresh().endPulldownToRefresh()
                        that.endPulldownToRefresh()
                        //上拉加载重置:（上拉了几次之后）当下拉刷新之后，页面显示为4个，可以再上拉加载
                        // mui("#refreshContainer").refresh(true)
                        // that.refresh(true)
                        // 4、点击刷新，刷新购物车
                        //注册刷新事件，防止多次绑定
                        $('.fa-refresh').off('click').on('click', function () {
                            //刷新，触发下拉操作
                            that.pulldownLoading()
                        })
                    }, 1000)
                }
            }
        }
    });

    // 2、侧滑时点击编辑，修改数量和码数
    //要用委托，因为当页面渲染完毕时才会有.mui-icon-compose类
    $('.mui-table-view').on('tap','.mui-icon-compose', function () {
        var id = $(this).parent().attr('data-id')
        var data = CT.getItemById(window.cartData.data, id)
        window.productNum = data.productNum
        var html = template('edit', data)
        var btnArray = ['确定', '取消']
        mui.confirm(html.replace(/\n/g,''), '商品编辑', btnArray, function(e) {
            //修改数量
            if (e.index == 0) {
                var size = $('.btn_size.now').html()
                var num = $('.p_number input').val()
                //发送请求，保存数据
                CT.loginAjax({
                    url: '/cart/updateCart',
                    type: 'post',
                    data: {
                        id: id,
                        size: size,
                        num: num
                    },
                    dataType: 'json',
                    success: function (data1) {
                        if (data1.success == true) {
                            //修改data里面改掉的数据
                            data.size = size
                            data.num = num
                            $('.mui-table-view').html(template('cartPro',window.cartData))
                            // setAmount()
                        }
                    }
                })
            } else {
                //todo
            }
        })
    })
    $('body').on('tap','.btn_size', function () {
        $(this).addClass('now').siblings().removeClass('now')
    });
    $('body').on('tap','.p_number span', function () {
        var num = $(this).siblings('input').val()
        if ($(this).hasClass('jia')) {
            if(num >= window.productNum) {
                mui.toast('库存不足')
                return false
            }
            num ++
        }
        if($(this).hasClass('jian')) {
            if(num <= 1) {
                mui.toast('请选择数量')
                return false
            }
            num --
        }
        $(this).siblings('input').val(num)
    })
    // 3、侧滑时点击删除，确认是否删除商品
    $('.mui-table-view').on('tap','.mui-icon-trash', function () {
        var id = $(this).parent().attr('data-id')
        $this = $(this)
        var btnArray = ['确定', '取消']
        mui.confirm('确认删除？', '删除商品', btnArray, function(e) {
            //删除购物车商品
            if (e.index == 0) {
                CT.loginAjax({
                    url: '/cart/deleteCart',
                    type: 'get',
                    data: {
                        id: id
                    },
                    dataType: 'json',
                    success: function (data1) {
                        if(data1.success == true) {
                            //增大了服务器的压力
                            // getCartDate({
                            //     page: 1,
                            //     pageSize: 100
                            // }, function (data) {
                            //     $('.mui-table-view').html(template('cartPro',data))
                            // })
                            $this.parent().parent().remove()
                            setAmount()
                        }
                    }
                })
            } else {
                // todo
            }
        })
    })

    // 5、点击复选框，计算总金额
    $('.mui-table-view').on('change','[type=checkbox]',function () {
        setAmount()
    })

})

//获取购物车里面的数据
var getCartDate = function (params, callback) {
    CT.loginAjax({
        url: '/cart/queryCartPaging',
        type: 'get',
        data: params,
        dataType: 'json',
        success: function (data) {
            window.cartData = data
            callback && callback(data)
        }
    })
}

var setAmount = function () {
    //被选中的单选框
    var $checks = $('[type=checkbox]:checked')
    var amount = 0
    $checks.each(function (i, items) {
        var id = $(this).attr('data-id')
        var item = CT.getItemById(window.cartData.data, id)
        var num = item.num
        var price = item.price
        amount+= num*price
    })
    if(Math.floor(amount*100)%10) {
        amount = Math.floor(amount*100)/100
    } else {
        amount = Math.floor(amount*100)/100
        amount = amount.toString()+'0'
    }
    console.log(amount)
    $('#cartAmount').html(amount)
}


